#include <stdio.h>
#include <string.h>
 
int main(int argc,const char * argv[])
{
#if 0
 //使⽤fgets从终端获取字符串
 char Str[24];
 //gets(Str);
 fgets(Str,24,stdin);
 //fgets 可以读取带空格的字符串
 //1、当终端输⼊的字符数 ⼩于 设置的第⼆个参数，就会把换⾏符作为⼀个字符 保存下来
 //2、当终端输⼊的字符数 ⼤于 设置的第⼆个参数，只会读取n-1个字符，最后⼀个补 \0
 //3、注意：设置的第⼆个参数 不能 ⼤于实际保存的 字符串的元素个数，否则 会出现数据溢
出的情况
 //当终端输⼊的字符数 ⼩于 设置的第⼆个参数，就会把换⾏符作为⼀个字符 保存下来
 //这个时候，需要对 垃圾字符 \n 进⾏处理 ，⽅法就是把 \n 变为 \0
 Str[strlen(Str) - 1] = '\0';
 puts(Str);
#endif
 //从⽂件中获取字符串
 char Str[24];
 FILE *fp = fopen("./user.text","r+");
 if(fp == NULL)
 {
 printf("⽂件打开失败\n");
 return 0;
 }
 // fgets(Str,24,fp);
 // puts(Str);
 // fgets(Str,24,fp);
 // puts(Str);
 // fgets(Str,24,fp);
 // puts(Str);
 fgets(Str,5,fp);
 puts(Str);
 
 //fgets 函数 去读取⽂件内容的时候，每次最多读取⼀⾏，不管什么情况，遇到换⾏符就结束
 //如果 读取的⼀⾏的字符数 ⼤于 设置的第⼆个参数 ，只会读 n -1 个字符，最后⼀个补\0
 fclose(fp);
 return 0;
}